%\documentclass[10pt]{article}
\documentclass[11pt,leqno, twoside]{article}
\usepackage[utf8]{inputenc}
\usepackage{polski}
\usepackage{a4wide}
\usepackage{hyperref}
\usepackage{color}
\usepackage[pdftex]{graphics}
\usepackage{longtable}
\definecolor{linkcol}{rgb}{0.4, 0.3, 0.1}
\hypersetup{colorlinks=true, linkcolor=linkcol}
%---------------------------------------------------------------------------------
%paginy!
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead{}
\renewcommand{\sectionmark}[1]{\markright{\thesection.\ #1. }}
\fancyhead[LE]{\textit{Informacja trackingowa} -- specyfikacja projektu}
\fancyhead[RO]{\rightmark}
\fancyfoot{} % clear all footer fields
\fancyfoot[LE,RO]{}
\fancyfoot[CE]{\thepage}
\fancyfoot[CO]{\thepage}
\addtolength{\headheight}{1.5pt} % pionowy odstep na kreske
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.0pt}
%--------------------------------------------------------------------------------

\date{\today}

\makeatletter
\renewcommand{\@biblabel}[1]{\quad #1.}
\makeatother

\renewcommand{\figurename}{Rys.}
\renewcommand{\labelitemi}{-}

\begin{document}

%\maketitle

\thispagestyle{empty}
\begin{center}
\large Arkadiusz Flinik\footnote{kierownik projektu}, Jakub Kowalski\footnote{skład dokumentu}, Krzysztof Skrzętnicki,\\
Krzysztof Sakwerda, Łukasz Zapart \\
\vspace{4cm}
\huge Informacja Trackingowa\\
\large Specyfikacja projektu\\
\vspace{1cm}
\normalsize 13 maja 2009 \\
\end{center}

\newpage

\tableofcontents

\newpage

\section{Określone przez klienta wymagania funkcjonalne}
\noindent System powinien wspierać pracowników spedytora w codziennej pracy, to jest
\begin{itemize}
\item umożliwiać wprowadzanie zleceń spedycyjnych, w imieniu klientów do systemu,
\item zarządzać cyklem życia zlecenia,
\item archiwizować informację o zrealizowanych zleceniach,
\item dodawać manualnie informacje trackingowe do zlecenia,
\item dysponować zlecenia spedycyjne na własne samochody oraz przekazywać je do wykonania podwykonawcom,
\item wspierać konsolidację pokazując rozmieszczenie miejsc pobrań oraz istotne informacje logistyczne na mapie,
\item monitorować bieżącą pozycję samochodu (wizualizacja na mapie, w oparciu o dane przekazywane z samochodu),
\item przypisywać do zlecenia informacje trackingowe przesyłane przez kierowców,
\item koncentrować pracę spedytora jedynie na istotnych sprawach, to znaczy wychwytywać sytuacje kiedy transport nie odbywa się zgodnie z przyjętym planem.
\end{itemize}


\section{Specyfikacja projektu}
\subsection{Aktorzy}
\noindent Role jakie będą mogli pełnić poszczególni użytkownicy w systemie.

\subsubsection{Kierowca}
\noindent Jego głównym zadaniem jest wprowadzanie informacji za pośrednictwem intefejsu www o~aktualnym stanie paczki. Jako stan paczki rozumiemy tu jej stan fizyczny (kierowca może poinformować spedytora o~np. uszkodzeniu przesyłki) i~położenie (większość przesłanych wiadomości będzie informacją o~tym, że paczka dotarła do punktu określonego w milestone planie).

Kierowca ma możliwość edycji wysłanych przez siebie informacji, jednak w systemie poprzednie wersje będą nadal widoczne dla niektórych użytkowników.

\subsubsection{Spedytor}
\noindent Ma możliwość uzupełnienia informacji trackingowych w zastępstwie kierowcy. Ma także wgląd we wszelkie informacje w~tym oznaczone jako niektualne (wcześniejsze wersje zedytowanych wiadomości).

Spedytor odpowiada również za wprowadzanie do systemu (za pośrednictwem interfejsu www) zleceń spedycyjnych, manifestów oraz milestone planów.

\subsubsection{Klient}
\noindent Klient jako osoba szczególnie zainteresowana dotarciem nieuszkodzonej przesyłki we właściwym czasie będzie miał możliwość podglądu aktualnej pozycji paczki oraz jej planowanej trasy.

Klient będzie mógł również zażyczyć sobie aby być informowanym o pewnych wydarzeniach związanych z przesyłką (np. opóźnieniach lub uszkodzeniach) przy czym wiadomości te zanim zostaną dostarczone klientowi mogą zostać zmienione lub usunięte przez spedytora.

Dodatkowo wyróżniamy dwa rodzaje klientów którym dajemy dodatkowe możliwości pozwalające weryfikować dane otrzymane od kierowców.

\textbf{Nadawca} będzie miał możliwość wprowadzenia do systemu informacji o~czasie nadania przesyłki.

\textbf{Odbiorca} będzie miał możliwość wprowadzenia do systemu informacji o~czasie odebrania i~stanie otrzymanej przesyłki.

\subsubsection{Zarządca}
\noindent Zarządca posiada pełny wgląd do wszystkich danych bez uprawnień ich zmiany. Posiada również możliwość oglądania zestawień.


\subsubsection{Administrator}
\noindent Osoba o~dostępie do wszystkich funkcjonalności której zadaniem jest sprawowanie pieczy nad systemem oraz zarządzanie użytkownikami i~ich uprawnieniami.


\subsection{Modele}
\noindent Opis obiektów z których będzie składał się system i którymi będą manipulowali użytkownicy.

\subsubsection{Zlecenie spedycyjne}
\noindent Zbiór wszystkich niezbędnych do dostraczenia paczki dokumentów oraz informacje o klientach: nadawcy i odbiorcy.

\subsubsection{Informacja trackingowa}
\noindent Jest to zbiór informacji o stanie paczki w danym punkcie czasu. Aktualna informacja trackingowa to ta, której czas jest najbliższy aktualnemu.

\subsubsection{Manifest spedycyjny}
\noindent Model w którym są przechowywane dane składające się na manifest.

\subsubsection{Milestone plan}
\noindent Zbiór par $\langle$czas, punkt na trasie$\rangle$ oznaczających miejsce, w którym powinno znajdować się paczka w podanym czasie.

\subsubsection{Użytkownik}
\noindent Reprezentuje użytkownika spełniającego w systemie jedną z określonych ról.

\subsubsection{Rola}
\noindent Model przechowujący prawa dostępu do poszczególnych części systemu dla różnych klas użytkowników systemu. Niewidoczny dla wszystkich użytkowników systemu poza administratorem.

\section{Funkcjonalności}
\subsection{Wgląd w planowaną i realizowaną trasę paczki}
\noindent Klienci oraz spedytor, mają możliwość obejrzenia punktów przez które przebiegać będzie trasa przesyłki wraz z oczekiwanymi (lub już zrealizowanymi) czasami ich osiągnięcia.

Na trasie tej wyróżnione zostaną punkty już zrealizowane oraz aktualnie realizowany.

\subsection{Dostęp do informacji trackingowych}
\noindent Użytkownicy systemu mają możliwość obejrzenia aktualnych informacji trackingowych.

\subsection{Automatyczna weryfikacja zgodności IT z milestone planem}
\noindent System monitoruje postęp w realizacji zlecenia i~w~przypadku wystąpienia niezgodności informacji trackingowych z milestone planem odpowiednie osoby będą o tym poinformowane pocztą elektroniczną. Informacje o tego typu zdarzanieach będą także widoczne w aplikacji internetowej.

Przez niezgodność informacji trackingowych z milestone planem rozumiemy sytuację w której punkt z milestone planu nie został osiągnięty w planowanym czasie.

\subsection{Weryfikacja nadania i odebrania}
\noindent Użytkownik wysyłający/odbierający przesyłkę może wprowadzić pojedynczą informacją trackingową dotyczącą odpowiednio nadania/odebrania przesyłki oraz komentarz.

\subsection{Możliwość ukrycia i/lub zmiany jakiejś IT przez spedytora}
\noindent Niektóre informacje trackingowe mogą zostać uznane przez spedytora jako nieodpowiednie/zbędne dla klienta, dlatego może on je ukryć. Niektóre informacje w zależności od ustawień, ukrywane będą domyślnie.

Spedytor może ponadto modyfikować istniejące informacje trackingowe, na przykład uzupełniając lub poprawiając dane.

\subsection{Możliwość wprowadzenia danych na temat IT}
\noindent Kluczową funkcjonalnością systemu jest możliwość wprowadzania przez kierowcę lub spedytora informacji trackingowych, tzn. informacji o miejscu, czasie i statusie przesyłki.

\subsection{Wszystkie zmiany są archiwizowane}
\noindent Każda informacja wprowadzona do systemu pozostaje w nim na zawsze. Jeśli użytkownik usunie lub zmodyfikuje informację, poprzednia wersja zostaje zachowana i oznaczona jako archiwalna.

\subsection{Podział IT na typy}
\noindent Każda informacja trackingowa przypisana jest do jednej z grup informujących o jej typie. Typ informacji trackingowej ma wpływ na jej widoczność dla klienta oraz wagę powiązanego zdarzenia. W przypadku zdarzeń o dużej wadze, informacja o nich zostaje natychmiast przekazana spedytorowi i/lub klientowi za pomocą poczty elektronicznej.

\subsection{Użytkownicy z dostępem do wszystkich informacji}
\noindent Użytkownicy ze specjalnymi uprawnieniami (spedytor, zarządca) mogą obejrzeć wszystkie informacje, w tym archiwalne, tj. takie które zostały wyedytowane lub usunięte.

\subsection{Wprowadzenie przez spedytora kluczowych danych}
\noindent Jeśli kierowca nie ma takiej możliwości, informacja trackingowa może być wpisana przez spedytora lub innego użytkownika z wystarczającymi uprawnieniami.

Spedytor ma także możliwość wprowadzenia informacji o zleceniu spedycyjnym oraz manifeście.

\subsection{Wysyłanie powiadomień do klienta }
\noindent Wydarzenia powiązane z informacjami trackingowymi, które zostaną zaklasyfikowane jako istotne dla klienta są, po wcześniejszej weryfikacji przez spedytora, przekazywane mu za pomocą poczty elektronicznej.

\subsection{Zarządzanie kontami użytkowników}
\noindent Administrator systemu ma możliwość zarządzania kontami użytkowników, którzy mają dostęp do systemu. W szczególności może dodawać, usuwać i modyfikować użytkowników oraz ich uprawnienia.

\subsection{Automatyczne dodawanie milestone planu}
\noindent Przy dodaniu nowego zlecenia spedycyjnego system automatycznie dopasowuje punkty startowe i końcowe trasy do wzorca zapisanego w systemie. Na tej podstawie może zostać wygenerowana przewidywana trasa w postaci pośrednich punktów wraz z oczekiwanymi czasami realizacji, tzw. milestone plan.

Jeśli w systemie nie znajduje się pasujący wzorzec, funkcjonalność ta nie jest realizowana, tzn. wygenerowany milestone plan zawiera jedynie początek i koniec trasy.


\end{document}